package com.zy.explore.generator.infrastructure.core.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * description 数据库表列VO
 *
 * @author 🇨🇳中国印🇨🇳
 * @date 2021年06月05日 15:16
 */
@ApiModel("表列VO")
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class TableColumnVO {

    @ApiModelProperty("是否是主键")
    private Boolean isPk;

    @ApiModelProperty("列名")
    private String columnName;

    @ApiModelProperty("列名对应的属性名")
    private String propName;

    @ApiModelProperty("列名对应的属性名首字母大写")
    private String firstUpperPropName;

    @ApiModelProperty("Mysql数据类型(小写)")
    private String dataType;

    @ApiModelProperty("JDBC数据类型(大写)")
    private String jdbcType;

    @ApiModelProperty("Java属性类型")
    private String propType;

    @ApiModelProperty("列注释")
    private String columnComment;

    @ApiModelProperty("列键类型")
    private String columnKey;

    @ApiModelProperty("额外信息")
    private String extra;

}
